In packet transmission between a sender and a receiver in a communication network, data packets can be lost or suffer bit errors during transmission on an un-reliable link such as communication channel in wireless local area network (WLAN) environments. In such circumstances, retransmission of lost or damaged packets from the sender to the receiver is required.
Conventionally, there are mainly two approaches for retransmission of data packets that are lost or not received at a receiver correctly. One approach involves retransmitting the data packet from the sender repeatedly until the maximum retry limit is reached. Another retransmission approach involves setting a fixed time deadline for retries such that any number of retransmissions by the sender can only be performed before that time deadline. After the time deadline, the sender will not retransmit a data packet, even if the receiver has not received the data packet correctly. A combination of the above two approaches is possible, wherein retransmission stops whenever either a maximum retry limit, or the time deadline, is reached.
However, since video transmission has inherent time constraints in terms of playback at the receiver, the above retransmission approaches prove problematic. Repeated retransmission of a data packet for video traffic until reaching the maximum retry limit is not effective if the retransmitted packet misses the receiver's time limit for decoding and playback. Such useless retransmission wastes network bandwidth.
Further, setting a fixed deadline for retries is inadequate for transmission of compressed video such as MPEG2. This is because picture frames need to be displayed constantly (25 or 30 frames/second as an example) after being decoded. However, the frame sizes of the compressed video sequence are variable, which means that variable transmission times are needed for different frames. For example, I-frames of MPEG2 can be 10 to 100 times larger than P-frames or B-frames. I-frames need much more time to be transmitted than B-frames or P-frames. Moreover, it is common that one Media Access Control (MAC) packet cannot carry a whole MPEG2 frame. If a MPEG2 frame is segmented into different MAC packets, their allowed retransmission duration may be quite different because the segments have the same decoding and playback deadline, but were transmitted at different times.
If the fixed retransmission deadline is longer than the actual allowed retransmission duration, network bandwidth is wasted due to useless retransmission. If the fixed retransmission deadline is shorter than the actual allowed retransmission duration, video transmission quality may be degraded since more retransmissions are needed to help recover packet error after the retransmission deadline, but before the decoding and playback deadline. There is, therefore, a need for a method and system for time-constrained transmission and retransmission of video packets in a communication network.